# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=nghttp2
pkgver=1.48.0
pkgrel=0
pkgdesc="Experimental HTTP/2 client, server and proxy"
url="https://nghttp2.org"
arch="all"
license="MIT"
makedepends_build="autoconf automake libtool"
makedepends_host="libev-dev openssl1.1-compat-dev zlib-dev c-ares-dev cunit-dev"
subpackages="$pkgname-static $pkgname-doc $pkgname-dev $pkgname-libs"
source="https://github.com/nghttp2/nghttp2/releases/download/v$pkgver/nghttp2-$pkgver.tar.xz
	disable-failing-musl-unittest.patch
	"
# temp allow textrels on riscv64
[ "$CARCH" = "riscv64" ] && options="$options textrels"

# secfixes:
#   1.41.0-r0:
#     - CVE-2020-11080
#   1.39.2-r0:
#     - CVE-2019-9511
#     - CVE-2019-9513

check() {
	make check
	# integration tests require go, which is only available
	# in community at the moment of writing. Disabling until
	# go is moved into main
#	cd "integration-tests"
#	make itprep
#	make it
}

build() {
	autoreconf -vif
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--localstatedir=/var \
		--without-libxml2 \
		--without-neverbleed \
		--without-jemalloc \
		--disable-python-bindings \
		--disable-examples \
		--enable-static \
		--enable-app
	make
}

package() {
	make DESTDIR="$pkgdir" install
}

static() {
	pkgdesc="$pkgname static libraries"
	mkdir -p "$subpkgdir"/usr/lib
	cd "$pkgdir"
	for _lib in  $(find . -name '*.a'); do
		mkdir -p "$subpkgdir"/${_lib%/*}
		mv "$_lib" "$subpkgdir"/${_lib%/*}/
	done
}

sha512sums="
77c22371290f77e8a538b9efea225d23567cc27cb60b71703cbcb057839b5f117cf50796aa82bf4518f22b38a5773e90a1c273eafff4b17c435ac5858bdf7c6f  nghttp2-1.48.0.tar.xz
ad9a645e00d33747338cd23d1d0ff7c744ea6abd504b9175e086574d23881b188fd014464b660923ff37a64c0c46c4379c96374ac8997b03eb2350f9ec817740  disable-failing-musl-unittest.patch
"
